<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // 语法：
        //   class  类名{
        // constructor(){}
        // 直接书写原型上的方法即可
        // }
        //     function Person(name,age){
        //        this.name=name
        //        this.age=age
        //     }
        //     // 原型添加一个方法
        //     // 2、原型上的方法，目的是为了给实例使用
        //     Person.prototype.sayHi=function(){
        //         console.log('hello world')
        //     }
        //     var p1=new Person('zhicha',18)
        //     console.log(p1)
        //     p1.sayHi()

        //     // 1、构造函数本质还是一个函数，可以不和new关键字连用
        //    var p2=Person('Rose',20)
        //    console.log(p2)

        //    类的书写
        class Person {
            constructor(name, age) {
                // 这里按照ES5的构造函数体书写 
                this.name = name
                this.age = age
            }
            // 直接书写原型上的方法即可
            sayHi() {
                console.log('你好   世界')
            }
        }
        var p1 = new Person('张三',18)
        console.log(p1)
        p1.sayHi()
    </script>
</body>

</html>